Method for mechanically generating content for messages

ABSTRACT

A method for inserting content through a service delivery hub includes the steps of designating a set of tags to be made available through an API, providing the API for use by third parties; intercepting a communication from the third party; interrogating the communication for a data tag, substituting content for the data tag and delivering the communication to an intended recipient. The method may further include that the content substituted for the data tag is dependent upon a parameter such as the MSISDN.

RELATED UNITED STATES CASES

This case is related to U.S. application Ser. No. 12/720,217 entitled Mobility Network Operator Service Delivery Hub and U.S. application Ser. No. 12/720,300 entitled Method for Automating Onboarding Application Developers to Sales Distribution Channels, both of which are being filed concurrently herewith and will be assigned to the same assignee.

TECHNICAL FIELD

This invention is directed to a service delivery platform, and more particularly, to a system and method for providing tags for embedding content stored on a service delivery platform.

BACKGROUND

Third party application service providers often require access to telecommunications services in order to exercise their respective business models. Traditionally, network operators have been able to develop systems and processes for providing third parties such desired access. Service delivery platforms created by network providers and tied to the network are used to provide native services to application service providers. Such service delivery platforms become an economical and efficient mechanism for providing network access.

The problem is that the functionality of service delivery platforms is very limited, most often to access, bandwidth and load control, and security with little other functionality provided. Moreover, service delivery platforms are local to the networks being accessed, meaning third party developers need to negotiate agreements and replicate their solution on multiple delivery platforms. The limited nature of service delivery platforms is especially difficult in the wireless telecommunications industry where rich network functionality is developing and becoming available yet not accessible to the third party developers. Thus there is a need for a full function service delivery platform which provides additional functionality including monetization, hosting, policy control, storefront sales portals, settlement, reporting, routing, and service management. There is also a need for a centralized service delivery platform to provide a single point of access to application developers to avoid replication of offerings and inefficient use of resources. Finally, there is a need to expand this functionality beyond application service providers to enablers and content aggregators and other third parties.

Once the afore-mentioned needs are met, there is a further need to develop mechanical methods for customizing message templates within the service delivery platform.

SUMMARY

A method for inserting content through a service delivery hub is provided. The method includes the steps of designating a set of tags to be made available through an API, providing the API for use by third parties; intercepting a communication from the third party; interrogating the communication for a data tag, substituting content for the data tag and delivering the communication to an intended recipient. The method may further include that the content substituted for the data tag is dependent upon a parameter such as the MSISDN. The parameter may also be a location of a user of the application or a network identifier. The method may include the communication being from a third party application accessing the APIs. The substituting step may include inserting a URL in the position of the tag, inserting distribution information in the position of the tag, and inserting an advertisement in the position of the tag which may be a targeted advertisement based on the MSISDN or other parameter. The substituting step may also include inserting partner information in the position of the tag.

BRIEF DESCRIPTION OF THE DRAWINGS

The following description is better understood when read in conjunction with the appended drawings, wherein

FIG. 1 is a system diagram of a service delivery hub in communication with remote networks;

FIG. 2 is a block diagram illustrating the functions of the service delivery hub and the interfaces open to third parties;

FIG. 3 is a block diagram illustrating the routing control function of the service delivery hub;

FIG. 4 is a block diagram illustrating the accessing of an enabler through the service delivery hub by a third party;

FIG. 5 is a block diagram illustrating an example of the functions of the business process between the network operator and an ASP; and

FIG. 6 is an example set of tags for mechanical insertion into an application.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

For the purposes of describing an exemplary embodiment of the invention, reference will be made to the figures set forth above and certain terms. As an aid to the reader, exemplary definitions of such terms are defined as follows:

-   -   “Application service provider (ASP)” is a provider which has one         or more applications which employ the services of the service         delivery hub.     -   “Aggregator” has relationships to one or more content,         application or service providers and manages the access of their         respective applications to the service delivery hub.     -   “Enabler provider (EP)” An enabler provider develops services         against its own resources and services with the option to mesh         those resources and services with those of the network operator         or other enabler providers, for example, a message enabler         provider may provide access to WAP push, SMSC, and MMSC services         as set forth below.     -   “On device” applications are applications that are downloadable         to a device such as a mobile handset or smart phone.     -   “Web-hosted based” applications are applications which are sold         in a subscription based model and accessed by customer devices.

With reference to FIG. 1, there is shown a system 10 having a service delivery hub 12 in communication with network operations 16, 18, and 20. As described more fully herein, the service delivery hub 12 provides a central access point for third party ASPs, aggregators, and enabler providers and includes a set of application programming interfaces (APIs) provided by the network provider or enabler providers. The service delivery hub 12 also includes a charging gateway which provides the capability for third parties to monetize their applications and a settlement center which balances accounts of multiple parties and network operators in accordance with contractual fee splitting arrangements or other mechanisms determined by the parties, so-called recursive settlements. The service delivery hub 12 also includes a control center to manage access to the system.

Referring again to FIG. 1, there is shown a third party application server 14 in communication with the service delivery hub 12. The service delivery hub 12 is targeted to produce an integration layer for access to the network operations 16, 18, and 20, specifically network elements, operational support systems and business support systems (OSS/BSS), and Internet application service providers (ASPs). The network operations 16, 18, and 20 (also referred to as networks herein) are illustrative only and may vary in number from one to many networks. The networks may be stand alone networks in a particular geographic area, which areas may be delineated on a country or state basis or any other geographic distinction. The networks may also be delineated by network operator or network type. There may also be more than one network in any one geographic region.

In the exemplary embodiment of FIG. 1, network operations 16 are designated as being in the country of Columbia, network operations 18 in Peru, and network operations 20 in Ecuador. Within each network operations 16, 18, 20, there is shown a representative sample of network subsystems contained therein and, in the case of network operations 16 in Columbia, shown numbered as 16 a-16 i. Those subsystems within network operations 16 include the short message service center (SMSC) 16 a, multi-media service center (MMSC) 16 b, wireless access protocol (WAP) gateway 16 c, a charging gateway labeled (CGW) 16 d, a charging and messaging gateway (CMG) used by aggregators” 16 e, enterprise data warehouse (EDW) 16 f, customer care 16 g, subscriber interface module (SIM) browsing 16 h, and operations and maintenance (O&M) 16 i. It will be understood by those skilled in the art that the identification of such subsystems is representative and is not meant to specify any one type of proprietary system and that each country or location may have its own instance of such subsystems. Moreover, not all subsystems are necessarily found in each network operations 16, 18, 20 and there may be other subsystems not listed above, for example, profile gateway (PGW) 18 j, and emergency management systems (EMS) 18 k are illustrated as part of network operation 18 but not as part of network operation 16.

The service delivery hub 12 exposes access to third party applications to network services provided by the network subsystems. The service delivery hub 12 supports third party developed services and controls application usage of network operations and third party services. It is preferred that the service delivery hub 12 employ industry standards known to those skilled in the art or to be developed by the industry, including but not limited to Parlay X, SOAP, REST, HTTPS, JKD 1.5, XML, SSL+X509 certification for transport security, and WSSE username token profile security.

The service delivery hub 12, has interfaces into each of the subsystems within network operations 16, 18, 20. An exemplary methodology for using those interfaces may include establishing a VPN tunnel from the service delivery hub 12 to the subsystem of interest. Thus, if an application residing on the third party application system server 14 desires access to SMSC 16 a, the service delivery hub 12 will establish a VPN tunnel or other connection to SMSC 16 a thereby providing the application access to SMSC 16 a.

An example of this routing is shown in FIG. 3. In that example, an aggregator 108 is utilizing the service delivery hub 12 to access an enabler 130 located in Mexico through an API provided by enabler 130 and made available to aggregator 108 through service delivery hub 12. The aggregator will send a request message to the service delivery hub 12 which includes an identifier, in this case, a MSISDN. The service delivery hub 12 will interpret the MSISDN and determine that it is destined for enabler 130 located in Mexico and not for the enablers 116 and 118 located in Columbia and Peru, respectively. The service delivery hub 12 then establishes a VPN tunnel to the enabler 130 located in Mexico and will prevent access to other networks. This limited but direct access may be monetized by the enabler and the network operator.

The service delivery hub 12 operates based on a series of service level agreements (SLAs) between various parties and the network operator. The service delivery platform 12 encapsulates access to the network enablers, OSS/BSS enablers, third party provided enablers and ASP applications. The service delivery platform 12 provides an application service creation gateway which provides standard APIs and software development kits (SDKs) to third party application providers. The service delivery hub 12 provides management functions for partners and aggregators, such as authentication, hosting, SLA policy control, service routing, limited charging, messaging, usage billing, settlement, monitoring, and reporting.

With reference to FIG. 2, an exemplary service delivery hub includes 12 functionality such as application service gateway (ASG) 30, enterprise service bus (ESB) 32, network service gateway (NSG) 34, partner management center 36, and Operation & Maintenance 38. External to the service delivery hub 12 may be HP Openview 50 which may be an implementation of an OSS supporting the operation and maintenance 38. ASG 30 provides access control, policy control, and blacklist/whitelist control.

Portal 42 provides an external link which uses the ASG 30 functionality to control access to the service delivery hub and further to authenticate users. The portal function 42 of the service delivery hub 12 provides for the sales and distribution of content and services, including third party applications. Specific functionality may include device management and rendering, a recommendation engine, detailed application descriptions, product categorization, multi-language support, sales and revenue settlement reports, advertising associations and multi-network footprint.

The charging gateway “/User Profile Server 48, shown in an exemplary embodiment as outside of service delivery hub 12 but interfacing therewith, provides storage media for user information and profiles. Access to the charging gateway/User profile server 48 by the ASG function 30 is routed through the ESB 32. Additional access and control interfaces are provided within the ASG function 30 for access by aggregators 44 and third party enablers 46.

The access control function within ASG 30 provides services such as service provider and user authentication and verification. The ASG 30 allocates and prioritizes service delivery hub 12 resources for the application accessing the service delivery hub 12. The service level policy control function enables the service delivery hub 12 to control and, if necessary, limit the system resources available to a third party application to prevent system overloading. By controlling the system resources through the service delivery hub, the network resources are able to be allocated along a broad range of applications. Policy control also provides for monetization at the service level or the parameter level for access to all network enablers. The scarcity of or availability of resources depending on time of day and loading algorithms provide variable and cost effective price strategies to third party developers and enablers. Quality of service and pricing associated therewith may also be provided by the policy control function.

Routing control functionality is provided by enterprise service bus (ESB) 32. This includes developing or configuring the routing policy. The routing control functionality of the service delivery hub 12 enables the third party providers to interface with the network or multiple networks at one and only one access point. The service delivery hub 12 is preferably able to interpret the MSISDN to determine the local network operator involved in the transaction and route accordingly. For example, the ESB 32 may route based on MSISDN in a GSM environment. The routing may also be determined based on location, including country or market, or a sales portal catalog.

The network services gateway (NSG) 34 within the service delivery hub 12 interfaces with network enablers 40 to provide access to network functionality, including, for example, SMSC 16 a, MMSC 16 b, or WAP GW 16 c or any other network elements or systems. The NSG 34 protects the network resources from overloading, manages all requests against an element and weighs any new requests coming in against the configured load capacity of any element. If multiple elements are available, it will load balance the requests across the multiple elements. For example, if there are multiple SMSCs 16 a in a given region, if one SMSC 16 a is overloaded, the NSG 34 may transfer load to another SMSC 16 a.

The service delivery hub 12 includes a partner management function 36 which include the contracting capability between the network operators and the enabler providers and the network operators and the ASPs. The partner management functions 36 include the ability to allow an administrator to configure contracts and SLAs for utilizing the charging module for charging transactions, for example, the charging subsystem 116 in FIG. 4. In that example, a third party 114 may access the service delivery platform 12 using the SOAP protocol interface 122 to access the SMSC subsystem 16 a located in Columbia under contract. The service delivery platform 12 will access the charging subsystem 116 for charging and reconciling the cost of such access to the third party (or its customers). In this example, the partner management function 36 plays the role of establishing the contracts and SLAs in the network. The act of establishing the connectivity and the routing is performed by the ASG 30 and ESB 32 for the charging reference and the ASG 30, ESB 32, and the NSG 34 for the SMSC reference. From a third party's development standpoint, the third party system 114 will receive an API for the desired enabler, in this example, the SMSC 16 a in Columbia. The third party would then develop the program using the API on the third party system 114 and test the program using the service delivery hub 12 test environment. Once development is completed, the third party system 114 will complete its purchase of access to the enabler and cut over to the production version of the service delivery hub 12.

Referring again to FIG. 2, the operations and maintenance functionality 38 of the service delivery hub 12 includes system management and reporting functions and provides interfaces to the operational support systems (OSS) 50 and electronic data warehouses (EDW) 52. The operations and maintenance function 38 is to support the platforms from a performance, availability and trouble-shooting perspective. Alarms will be sent to the OSS 50 when subsystems of the overall architecture are unavailable. The settlement functionality lies within the partner management center 36 of the service delivery hub 12 and provides allocation of revenue and reports covering various aspects of sales. This may include asset sales such as applications or enabler usage. Report features may include multi-currency and multi-country settlements. Moreover, there may be recursive settlement functionality for multi-party transactions. The reporting functionality within the partner management center 36 of the service delivery hub 12 may be customized for a variety of applications and enablers. For example, reports may include application service provider settlements, application service provider traffic, enabler provider settlement, enabler provider traffic, traffic TPS reports, error, availability and sales portal reports.

The service delivery hub 12 provides the added functionality of monetization of third party applications and services. For example, the network enablers are provided the tools to be able to charge at the parameter level for access to all network enablers. Using the access control and other policy rules, the network operator, on behalf of third party enabler providers, is able to throttle or gate applications based on TPS or total volume, time of day and other parameters. Moreover, the network operators may apply quality of service to the network-based APIs and third party supplied APIs.

With respect to third party enablers, the network operator may pay or revenue share for the use of such enablers. The network operator may sell access to the third party enablers. Finally, the network operator may recursively charge and settle with third party enablers.

In operation, the ASP may enter into a contractual relationship with a mobile network operator through which contract the network operator will provide functionality and interfaces defined by a set of SLA's to the ASP. The ASP incorporates the functionality into the application. The application is then either sold on the network operator's portal 42 (or multiple portals located in different geographic areas) or sold directly to the consumer.

Continuing with an operational view, an enabler, either a third party network enabler or a third party application enabler, may also enter into a contractual relationship with the mobile network operator. The enabler may provide a set of interfaces to the service delivery hub 12 on a revenue share basis to be used by third party ASPs using the service delivery hub 12.

There are many examples of this monetization business model. For example, application service providers utilizing the service delivery hub may contain products or services offered to the customers and include contractual terms with the network operator through which the network operator and the ASP both share in the monetization of an application. For example, video game developers may offer a gaming system to its customers on a storefront accessible through the portal 42 of the service delivery platform. The game may include, for example, a free trial version downloadable to a mobile device with an option to purchase the full version. The network operator will receive the order from the customer, deliver the full version of the game to the customer, receive payment from the customer, and then share the revenue generated with the ASP.

According to another exemplary utilization of the invention, an enabler may provide messaging services through an API that is made available to the ASP developing a video gaming application. For example, the enabler may offer two products to the ASP for a gaming application, sending and receiving SMS messages and sending and receiving MMS messages which permit users of the game to text or video chat while playing the game. For each, the ASP may charge its customers either a flat fee or a use-based fee or build the fee into the cost of the game. The network operator may charge the ASP a set-up fee, a maintenance fee, or a service-level based fee for use or a flat-rate fee for use.

In another exemplary embodiment, an enabler may provide a service to the network operator on behalf of third party ASPs. For example, the enabler may provide mobile advertising services, including getting advertisements, posting advertisements and tracking advertisements. Depending on the contractual relationships, the parties involved in the transaction may share the advertising revenue either two ways, i.e., the enabler provider and network provider, or three ways, including the ASP.

Application service providers may sell anything using the network operator's storefront or its own storefront. In addition to on-device applications in which applications such as games are downloadable directly onto a mobile device, the service delivery platform also supports web-hosted based applications which are stored on network and accessed by mobile devices through a portal. The service delivery hub permits the ASP to host its own web-hosted applications or have them hosted in a network cloud operated by the network operator. In the latter case and using the example of a gaming system, the gaming system may be hosted in the network cloud and offered to subscribers on a subscription (fee per month) basis. As such, the service delivery hub 12 permits the ASP to access and post its offering in one location, while outsourcing to the network operator the hosting, accounting, fulfillment, collection and settlement functions, with a revenue share used to monetize the offering.

In the ASP model, there may be aggregators of content that utilize the services of the network operator through the service delivery hub 12. Content to be aggregated may be obtained from ASPs, for example, a gaming aggregator may offer multiple games from a variety of ASPs on a single storefront, either its own storefront or a storefront accessible through the network operator portal. Alternatively, such aggregators may make their content available to ASPs or directly to customers of network operators. For example, content aggregators may collect and offer music under contract with recording studios and make that music content available to game developers for a fee. In either case, the aggregators utilizing the service delivery hub 12 are able to deploy a single interconnection and achieve distribution across a wide array of network operators in diverse geographical locations.

Enablers may provide access via application programming interfaces (APIs) to a wide range of functions. On the portal side, API's may be provided for functions including ownership checking, purchasing, quoting, delivery, catalog discovery, device checking, advertising and subscription notification. Network API's may be provided for charging, customer profiling, SMS, WAP Push and MMS. External API's may include searching functionality, while service delivery hub API's may include alarm notification. Moreover, external API's may be used by third party developers to create their own enablers that can be resold to other providers or other developers or embedded as a library in an SDK.

With reference to FIG. 5, there is shown a block diagram illustrating an exemplary embodiment of the functions of the business process implemented by specially programmed computer servers. The transaction is between the network operator and an ASP as supported by the service delivery hub 12. The server associated with an ASP will access the service delivery hub 12 to complete a contract template 150, which in this example, contains a request to purchase two products, P1 151 and P2 152. The template sets forth contractual terms including the product and the price and any applicable SLAs 158 for each of those products 151 152. Each product then is referred to an application programming interface, shown as API 154 for product P1 151 and API 156 for product P2 152. Each of those APIs are provided by a third party enabler 162 through an enabler function 160 located within the service delivery hub 12, and in this example, each also has an associated cost. With this business relationship established, the ASP then may utilize the service delivery hub 12 in the execution of its business plan.

When messages are application-originated and have a single point of contact with the network through the service delivery hub 12, it is preferred that the service delivery hub 12 have the ability to customize standard messages to be sent by multiple entities wherein the only difference between the messages is the information stored in the service delivery hub 12. It is also preferable for the service delivery hub 12 to mechanically insert monetizable messages such as a text-based advertisement for SMS, MMS or email or a binary-based advertisement such as an image sent over MMS or embedded in an email or a uniform resource locator (URL) to a website embedded in a message such as used in WAP push messaging.

According to one embodiment of the invention, a method for providing tags for insertions into messages is provided. The service delivery hub 12 may intercept a message, interrogate it for specific tags and replace the tags with specific values as defined by the tags. The tags may include both binary and text-based content. An example case for this process is that an application may generate an application-originated SMS message which is intercepted by the service delivery hub 12. The service delivery hub 12 will interrogate the SMS message for any tags and insert the appropriate text defined by the tags. In this manner, the service delivery hub 12 may insert advertisements, names of entities, names of applications, contact information, or any other information defined by the tags.

A set of tags may be inserted into a message template by a third party to be used by an originating application. Each of those tags are recognized by the service delivery hub 12 to perform a task. In some cases, the task is to look up the name, for example, of the application or application service provider, while in other cases the tag triggers an action to retrieve data such as retrieval of an advertisement or a recommendation. While the retrieval may be triggered by the tag, the content to be inserted may be dependent upon other criteria as interpreted by the service delivery hub 12, specifically the MSISDN which permits the customization of inserted content based on the identification of the user.

An example set of tags is defined in FIG. 6 wherein the parameter is listed in the first column, an indication as to whether the information defined by a tag is required in the middle column, and a description of the parameter is set forth in the third column. For example, ${Partner Name} is a tag that the ASP may embed in its application. When a partner calls this API, the service delivery hub 12 will insert the partner's name in the location defined by the tag. Thus, a partner will be able to have an application offered to its customers identify the partner's name, either in addition to or in lieu of the ASP that created the API. Another example is the URL tags for a network operator portal identified as ${NO MIB URL} which portal may be geographically based either by country or by other geographic designation. Using this tag, the ASP may have the service delivery platform insert a different URL for a network operator's portal based on location of the user of that portal. ${Partner URL} is the URL of the partner calling the API and ${Partner Logo} is the logo of the partner calling the API. It is contemplated that other URLs may be tagged and inserted.

Continuing with the examples of FIG. 6, ${NO URL} and ${NO Name} tags will instruct the service delivery hub to insert the URL and name of the network operator, respectively. ${Advertisement} is interpreted by the service delivery platform 12 as a request to insert an advertisement in the tagged section of the message. It is preferred that this tag only be used when a MSISDN is available so that the inserted advertisement may be directed to the geographic area or the particular interests or purchasing habits associated with the MSISDN. ${Distribution Name} and ${Distribution List} is the name assigned to a person within a distribution list or the name of the distribution list itself. This is useful for messaging from within an application targeted to a group of recipients and it is contemplated that other tags may be created for alternative distribution groups and subgroups. ${Customer Type} is a tag representing the customer type information available from a customer profile and is used when a MSISDN is available. Customer type may refer to a pre-paid or post-paid customer. Finally, the ${Recommendation} is a request to have the service delivery hub 12 populate this section of the message with a recommendation. Again, this is used when a MSISDN is available so that the recommendation may be tied to the browser and purchase behavior associated with the MSISDN.

In an alternative embodiment, in lieu of using the MSISDN to select the content to be inserted in the position of the tags, other parameters may be used to determine the selection. For example, the content may be selected based on location, network identification, or any other criteria set forth by the API wherein the service delivery hub is able to determine the content based on its interpretation of parameters involved in the transaction.

Additional tags may be designated and defined by network operators or by third party developers to be included in APIs. The interrogation and resolution of such tags is preferably performed within the service development hub 12.

While the service delivery hub 12 has been described in connection with the various embodiments of the various figures, it is to be understood that other similar embodiments can be used or modifications and additions can be made to the described embodiment for performing the same types of functionality in service delivery without deviating therefrom. For example, one skilled in the art will recognize that the service delivery hub 12 may be located anywhere with portal access from multiple locations. The service delivery hub 12 may provide access to one or multiple networks simultaneously and block access to other networks. The service delivery platform 12 may be scaled to provide access to a plurality of networks either domestic or international. Any type of telecommunications network may be supported, including but not limited to GSM, CDMA, EDGE, 3G, 4G, LTE or any other wireless network. While VPN tunneling to connect to the plurality of networks has been described, other types of access and communications are contemplated, including SSL. While an exemplary list of tags has been described, other tags and definitions may be defined by network operators or developers. Therefore, the service delivery hub 12 should not be limited to any single embodiment, but rather should be construed in breadth and scope in accordance with the appended claims. 

What is claimed:
 1. A method comprising: designating, by an application service provider of a system-comprising at least one processor, a set of tags to be made available through an application programming interface provided by the application service provider; providing the application programming interface for use by third parties; intercepting a communication indicative of being provided by a third party; interrogating the communication for at least one data tag of the designated set of data tags; determining that the communication comprises a first data tag of the designated set of data tags made available through the application programming interface; substituting content for the first data tag for generating an updated communication, wherein the content is dependent upon a network parameter of an intended recipient; and delivering the updated communication to the intended recipient.
 2. The method of claim 1 wherein the parameter comprises a MSISDN.
 3. The method of claim 1 wherein the parameter comprises is a location of a user of the application programming interface.
 4. The method of claim 1 wherein the parameter comprises a network identifier.
 5. The method of claim 1 wherein the communication is indicative of being from a third party application accessing the application programming interface.
 6. The method of claim 1 wherein the substituting comprises inserting a URL in a position of the first tag.
 7. The method of claim 1 wherein the substituting comprises inserting distribution information in a position of the first tag.
 8. The method of claim 1 wherein the substituting comprises inserting an advertisement in a position of the first tag.
 9. The method of claim 8 wherein the advertisement is selected based on an MSISDN.
 10. The method of claim 1 wherein the substituting comprises inserting partner information in a position of the first tag. 